// generator.h 

#include "includes.h"

std::list<Move> generateWhiteMoves(board *);
std::list<Move> generateBlackMoves(board *);
int generate_k_moves(board *, std::list<Move> *);
int generate_q_moves(board *, std::list<Move> *);
int generate_b_moves(board *, std::list<Move> *);
int generate_n_moves(board *, std::list<Move> *);
int generate_r_moves(board *, std::list<Move> *);
int generate_p_moves(board *, std::list<Move> *);
int generate_K_moves(board *, std::list<Move> *);
int generate_Q_moves(board *, std::list<Move> *);
int generate_B_moves(board *, std::list<Move> *);
int generate_N_moves(board *, std::list<Move> *);
int generate_R_moves(board *, std::list<Move> *);
int generate_P_moves(board *, std::list<Move> *);
unsigned int move_n(unsigned int);
unsigned int move_s(unsigned int);
unsigned int move_e(unsigned int);
unsigned int move_w(unsigned int);
unsigned int move_ne(unsigned int);
unsigned int move_nw(unsigned int);
unsigned int move_se(unsigned int);
unsigned int move_sw(unsigned int);

